{
 "cells": [
  {
   "cell_type": "code",
   "id": "initial_id",
   "metadata": {
    "collapsed": true,
    "ExecuteTime": {
     "end_time": "2025-08-22T08:26:59.041992Z",
     "start_time": "2025-08-22T08:26:58.788750Z"
    }
   },
   "source": [
    "from idlelib.iomenu import encoding\n",
    "\n",
    "import pandas as pd\n",
    "import numpy as np\n",
    "import openpyxl\n",
    "import matplotlib.pyplot as plt\n",
    "from win32con import ACCESS_MOUSEKEYS\n"
   ],
   "outputs": [],
   "execution_count": 80
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:27:03.067344Z",
     "start_time": "2025-08-22T08:27:02.995877Z"
    }
   },
   "cell_type": "code",
   "source": [
    "df = pd.read_excel(r'C:\\Users\\Public\\Nwt\\cache\\recv\\祝子俊\\sales.xlsx',engine='openpyxl')\n",
    "df"
   ],
   "id": "6b69948d77dc5236",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "    USERID  ORDERDATE  ORDERID  AMOUNTINFO\n",
       "0        1 2023-05-01       11      1000.0\n",
       "1        2 2024-04-02       22      2000.0\n",
       "2        3 2023-12-03       12      3000.0\n",
       "3        4 2024-04-04       44      4000.0\n",
       "4        5 2024-04-05       53      5000.0\n",
       "5        6 2023-09-05       66         NaN\n",
       "6        2 2024-02-02       77       300.0\n",
       "7        2 2023-10-23       88       800.0\n",
       "8        6 2024-04-23       99      1500.0\n",
       "9        1 2024-01-01       12      2500.0\n",
       "10       1 2023-11-11       34       600.0\n",
       "11       7 2024-02-01       45       650.0\n",
       "12       7 2023-12-13       73      1000.0\n",
       "13       7 2023-02-04       73      1000.0\n",
       "14       7 2024-03-01       23       900.0\n",
       "15       8 2024-04-04       65      2000.0\n",
       "16       8 2023-09-01       76      2500.0\n",
       "17       9 2024-04-29       21      3000.0\n",
       "18       9 2024-02-23       24      2000.0\n",
       "19      10 2024-04-17       56      7000.0\n",
       "20       1 2024-03-12       30      1000.0\n",
       "21       1 2024-03-19       30      1000.0\n",
       "22       7 2023-11-14       86       500.0\n",
       "23       7 2024-01-12       54       700.0\n",
       "24       7 2024-03-08       69       500.0\n",
       "25       1 2013-12-31        9      4000.0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>USERID</th>\n",
       "      <th>ORDERDATE</th>\n",
       "      <th>ORDERID</th>\n",
       "      <th>AMOUNTINFO</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>2023-05-01</td>\n",
       "      <td>11</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>2024-04-02</td>\n",
       "      <td>22</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>2023-12-03</td>\n",
       "      <td>12</td>\n",
       "      <td>3000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>44</td>\n",
       "      <td>4000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>2024-04-05</td>\n",
       "      <td>53</td>\n",
       "      <td>5000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>2023-09-05</td>\n",
       "      <td>66</td>\n",
       "      <td>NaN</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>2</td>\n",
       "      <td>2024-02-02</td>\n",
       "      <td>77</td>\n",
       "      <td>300.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>2</td>\n",
       "      <td>2023-10-23</td>\n",
       "      <td>88</td>\n",
       "      <td>800.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>6</td>\n",
       "      <td>2024-04-23</td>\n",
       "      <td>99</td>\n",
       "      <td>1500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-01-01</td>\n",
       "      <td>12</td>\n",
       "      <td>2500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>1</td>\n",
       "      <td>2023-11-11</td>\n",
       "      <td>34</td>\n",
       "      <td>600.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-02-01</td>\n",
       "      <td>45</td>\n",
       "      <td>650.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-12-13</td>\n",
       "      <td>73</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-02-04</td>\n",
       "      <td>73</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-03-01</td>\n",
       "      <td>23</td>\n",
       "      <td>900.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>8</td>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>65</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>8</td>\n",
       "      <td>2023-09-01</td>\n",
       "      <td>76</td>\n",
       "      <td>2500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>9</td>\n",
       "      <td>2024-04-29</td>\n",
       "      <td>21</td>\n",
       "      <td>3000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>9</td>\n",
       "      <td>2024-02-23</td>\n",
       "      <td>24</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>10</td>\n",
       "      <td>2024-04-17</td>\n",
       "      <td>56</td>\n",
       "      <td>7000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-03-12</td>\n",
       "      <td>30</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-03-19</td>\n",
       "      <td>30</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-11-14</td>\n",
       "      <td>86</td>\n",
       "      <td>500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-01-12</td>\n",
       "      <td>54</td>\n",
       "      <td>700.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-03-08</td>\n",
       "      <td>69</td>\n",
       "      <td>500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>1</td>\n",
       "      <td>2013-12-31</td>\n",
       "      <td>9</td>\n",
       "      <td>4000.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 81,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 81
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:27:06.253286Z",
     "start_time": "2025-08-22T08:27:06.217386Z"
    }
   },
   "cell_type": "code",
   "source": [
    "df['AMOUNTINFO'].fillna(df['AMOUNTINFO'].mean(),inplace=True)\n",
    "df"
   ],
   "id": "e1105b3a715b3222",
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Windows\\AppData\\Local\\Temp\\ipykernel_7284\\179545239.py:1: FutureWarning: A value is trying to be set on a copy of a DataFrame or Series through chained assignment using an inplace method.\n",
      "The behavior will change in pandas 3.0. This inplace method will never work because the intermediate object on which we are setting values always behaves as a copy.\n",
      "\n",
      "For example, when doing 'df[col].method(value, inplace=True)', try using 'df.method({col: value}, inplace=True)' or df[col] = df[col].method(value) instead, to perform the operation inplace on the original object.\n",
      "\n",
      "\n",
      "  df['AMOUNTINFO'].fillna(df['AMOUNTINFO'].mean(),inplace=True)\n"
     ]
    },
    {
     "data": {
      "text/plain": [
       "    USERID  ORDERDATE  ORDERID  AMOUNTINFO\n",
       "0        1 2023-05-01       11      1000.0\n",
       "1        2 2024-04-02       22      2000.0\n",
       "2        3 2023-12-03       12      3000.0\n",
       "3        4 2024-04-04       44      4000.0\n",
       "4        5 2024-04-05       53      5000.0\n",
       "5        6 2023-09-05       66      1938.0\n",
       "6        2 2024-02-02       77       300.0\n",
       "7        2 2023-10-23       88       800.0\n",
       "8        6 2024-04-23       99      1500.0\n",
       "9        1 2024-01-01       12      2500.0\n",
       "10       1 2023-11-11       34       600.0\n",
       "11       7 2024-02-01       45       650.0\n",
       "12       7 2023-12-13       73      1000.0\n",
       "13       7 2023-02-04       73      1000.0\n",
       "14       7 2024-03-01       23       900.0\n",
       "15       8 2024-04-04       65      2000.0\n",
       "16       8 2023-09-01       76      2500.0\n",
       "17       9 2024-04-29       21      3000.0\n",
       "18       9 2024-02-23       24      2000.0\n",
       "19      10 2024-04-17       56      7000.0\n",
       "20       1 2024-03-12       30      1000.0\n",
       "21       1 2024-03-19       30      1000.0\n",
       "22       7 2023-11-14       86       500.0\n",
       "23       7 2024-01-12       54       700.0\n",
       "24       7 2024-03-08       69       500.0\n",
       "25       1 2013-12-31        9      4000.0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>USERID</th>\n",
       "      <th>ORDERDATE</th>\n",
       "      <th>ORDERID</th>\n",
       "      <th>AMOUNTINFO</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>2023-05-01</td>\n",
       "      <td>11</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>2024-04-02</td>\n",
       "      <td>22</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>2023-12-03</td>\n",
       "      <td>12</td>\n",
       "      <td>3000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>44</td>\n",
       "      <td>4000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>2024-04-05</td>\n",
       "      <td>53</td>\n",
       "      <td>5000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>2023-09-05</td>\n",
       "      <td>66</td>\n",
       "      <td>1938.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>2</td>\n",
       "      <td>2024-02-02</td>\n",
       "      <td>77</td>\n",
       "      <td>300.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>2</td>\n",
       "      <td>2023-10-23</td>\n",
       "      <td>88</td>\n",
       "      <td>800.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>6</td>\n",
       "      <td>2024-04-23</td>\n",
       "      <td>99</td>\n",
       "      <td>1500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-01-01</td>\n",
       "      <td>12</td>\n",
       "      <td>2500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>1</td>\n",
       "      <td>2023-11-11</td>\n",
       "      <td>34</td>\n",
       "      <td>600.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-02-01</td>\n",
       "      <td>45</td>\n",
       "      <td>650.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-12-13</td>\n",
       "      <td>73</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-02-04</td>\n",
       "      <td>73</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-03-01</td>\n",
       "      <td>23</td>\n",
       "      <td>900.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>8</td>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>65</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>8</td>\n",
       "      <td>2023-09-01</td>\n",
       "      <td>76</td>\n",
       "      <td>2500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>9</td>\n",
       "      <td>2024-04-29</td>\n",
       "      <td>21</td>\n",
       "      <td>3000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>9</td>\n",
       "      <td>2024-02-23</td>\n",
       "      <td>24</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>10</td>\n",
       "      <td>2024-04-17</td>\n",
       "      <td>56</td>\n",
       "      <td>7000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-03-12</td>\n",
       "      <td>30</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-03-19</td>\n",
       "      <td>30</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-11-14</td>\n",
       "      <td>86</td>\n",
       "      <td>500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-01-12</td>\n",
       "      <td>54</td>\n",
       "      <td>700.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-03-08</td>\n",
       "      <td>69</td>\n",
       "      <td>500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>1</td>\n",
       "      <td>2013-12-31</td>\n",
       "      <td>9</td>\n",
       "      <td>4000.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 82,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 82
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:27:12.186518Z",
     "start_time": "2025-08-22T08:27:12.150090Z"
    }
   },
   "cell_type": "code",
   "source": [
    "df = pd.DataFrame(df)\n",
    "df"
   ],
   "id": "7b879400c10553ad",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "    USERID  ORDERDATE  ORDERID  AMOUNTINFO\n",
       "0        1 2023-05-01       11      1000.0\n",
       "1        2 2024-04-02       22      2000.0\n",
       "2        3 2023-12-03       12      3000.0\n",
       "3        4 2024-04-04       44      4000.0\n",
       "4        5 2024-04-05       53      5000.0\n",
       "5        6 2023-09-05       66      1938.0\n",
       "6        2 2024-02-02       77       300.0\n",
       "7        2 2023-10-23       88       800.0\n",
       "8        6 2024-04-23       99      1500.0\n",
       "9        1 2024-01-01       12      2500.0\n",
       "10       1 2023-11-11       34       600.0\n",
       "11       7 2024-02-01       45       650.0\n",
       "12       7 2023-12-13       73      1000.0\n",
       "13       7 2023-02-04       73      1000.0\n",
       "14       7 2024-03-01       23       900.0\n",
       "15       8 2024-04-04       65      2000.0\n",
       "16       8 2023-09-01       76      2500.0\n",
       "17       9 2024-04-29       21      3000.0\n",
       "18       9 2024-02-23       24      2000.0\n",
       "19      10 2024-04-17       56      7000.0\n",
       "20       1 2024-03-12       30      1000.0\n",
       "21       1 2024-03-19       30      1000.0\n",
       "22       7 2023-11-14       86       500.0\n",
       "23       7 2024-01-12       54       700.0\n",
       "24       7 2024-03-08       69       500.0\n",
       "25       1 2013-12-31        9      4000.0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>USERID</th>\n",
       "      <th>ORDERDATE</th>\n",
       "      <th>ORDERID</th>\n",
       "      <th>AMOUNTINFO</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>1</td>\n",
       "      <td>2023-05-01</td>\n",
       "      <td>11</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2</td>\n",
       "      <td>2024-04-02</td>\n",
       "      <td>22</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>3</td>\n",
       "      <td>2023-12-03</td>\n",
       "      <td>12</td>\n",
       "      <td>3000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>4</td>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>44</td>\n",
       "      <td>4000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>5</td>\n",
       "      <td>2024-04-05</td>\n",
       "      <td>53</td>\n",
       "      <td>5000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>6</td>\n",
       "      <td>2023-09-05</td>\n",
       "      <td>66</td>\n",
       "      <td>1938.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>2</td>\n",
       "      <td>2024-02-02</td>\n",
       "      <td>77</td>\n",
       "      <td>300.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>2</td>\n",
       "      <td>2023-10-23</td>\n",
       "      <td>88</td>\n",
       "      <td>800.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>6</td>\n",
       "      <td>2024-04-23</td>\n",
       "      <td>99</td>\n",
       "      <td>1500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-01-01</td>\n",
       "      <td>12</td>\n",
       "      <td>2500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>1</td>\n",
       "      <td>2023-11-11</td>\n",
       "      <td>34</td>\n",
       "      <td>600.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>11</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-02-01</td>\n",
       "      <td>45</td>\n",
       "      <td>650.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>12</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-12-13</td>\n",
       "      <td>73</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>13</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-02-04</td>\n",
       "      <td>73</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>14</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-03-01</td>\n",
       "      <td>23</td>\n",
       "      <td>900.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>15</th>\n",
       "      <td>8</td>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>65</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>16</th>\n",
       "      <td>8</td>\n",
       "      <td>2023-09-01</td>\n",
       "      <td>76</td>\n",
       "      <td>2500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>17</th>\n",
       "      <td>9</td>\n",
       "      <td>2024-04-29</td>\n",
       "      <td>21</td>\n",
       "      <td>3000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>18</th>\n",
       "      <td>9</td>\n",
       "      <td>2024-02-23</td>\n",
       "      <td>24</td>\n",
       "      <td>2000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>19</th>\n",
       "      <td>10</td>\n",
       "      <td>2024-04-17</td>\n",
       "      <td>56</td>\n",
       "      <td>7000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>20</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-03-12</td>\n",
       "      <td>30</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>21</th>\n",
       "      <td>1</td>\n",
       "      <td>2024-03-19</td>\n",
       "      <td>30</td>\n",
       "      <td>1000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>22</th>\n",
       "      <td>7</td>\n",
       "      <td>2023-11-14</td>\n",
       "      <td>86</td>\n",
       "      <td>500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>23</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-01-12</td>\n",
       "      <td>54</td>\n",
       "      <td>700.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>24</th>\n",
       "      <td>7</td>\n",
       "      <td>2024-03-08</td>\n",
       "      <td>69</td>\n",
       "      <td>500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>25</th>\n",
       "      <td>1</td>\n",
       "      <td>2013-12-31</td>\n",
       "      <td>9</td>\n",
       "      <td>4000.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 83,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 83
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:27:14.649545Z",
     "start_time": "2025-08-22T08:27:14.626299Z"
    }
   },
   "cell_type": "code",
   "source": [
    "df1 = df.groupby('USERID').agg({\n",
    "    'ORDERDATE':'max',\n",
    "    'ORDERID':'count',\n",
    "    'AMOUNTINFO':'sum'\n",
    "})\n",
    "df1"
   ],
   "id": "414f94b2985aa2ad",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "        ORDERDATE  ORDERID  AMOUNTINFO\n",
       "USERID                                \n",
       "1      2024-03-19        6     10100.0\n",
       "2      2024-04-02        3      3100.0\n",
       "3      2023-12-03        1      3000.0\n",
       "4      2024-04-04        1      4000.0\n",
       "5      2024-04-05        1      5000.0\n",
       "6      2024-04-23        2      3438.0\n",
       "7      2024-03-08        7      5250.0\n",
       "8      2024-04-04        2      4500.0\n",
       "9      2024-04-29        2      5000.0\n",
       "10     2024-04-17        1      7000.0"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>ORDERDATE</th>\n",
       "      <th>ORDERID</th>\n",
       "      <th>AMOUNTINFO</th>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>USERID</th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "      <th></th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2024-03-19</td>\n",
       "      <td>6</td>\n",
       "      <td>10100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2024-04-02</td>\n",
       "      <td>3</td>\n",
       "      <td>3100.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2023-12-03</td>\n",
       "      <td>1</td>\n",
       "      <td>3000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>1</td>\n",
       "      <td>4000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>2024-04-05</td>\n",
       "      <td>1</td>\n",
       "      <td>5000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>2024-04-23</td>\n",
       "      <td>2</td>\n",
       "      <td>3438.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>2024-03-08</td>\n",
       "      <td>7</td>\n",
       "      <td>5250.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>2024-04-04</td>\n",
       "      <td>2</td>\n",
       "      <td>4500.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>2024-04-29</td>\n",
       "      <td>2</td>\n",
       "      <td>5000.0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>10</th>\n",
       "      <td>2024-04-17</td>\n",
       "      <td>1</td>\n",
       "      <td>7000.0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 84,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 84
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:28:26.227791Z",
     "start_time": "2025-08-22T08:28:26.209769Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 计算R\n",
    "r = []\n",
    "df1['ORDERDATE'] = pd.to_datetime(df1['ORDERDATE'])\n",
    "end_date = pd.to_datetime('2024-05-01')\n",
    "df1['days_diff'] = (end_date - df1['ORDERDATE']).dt.days\n",
    "df1['days_diff']\n",
    "for i in df1['days_diff']:\n",
    "    if i <= 7:\n",
    "        r.append(5)\n",
    "    elif i <= 14:\n",
    "        r.append(4)\n",
    "    elif i <= 31:\n",
    "        r.append(3)\n",
    "    elif i <= 90:\n",
    "        r.append(2)\n",
    "    else:\n",
    "        r.append(1)\n",
    "r\n"
   ],
   "id": "c4d41a0f09c4a520",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[2, 3, 1, 3, 3, 4, 2, 3, 5, 4]"
      ]
     },
     "execution_count": 86,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 86
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:28:35.119621Z",
     "start_time": "2025-08-22T08:28:35.092693Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 计算f\n",
    "f = []\n",
    "for i in df1['ORDERID']:\n",
    "    if i >= 7:\n",
    "        f.append(5)\n",
    "    elif i >= 5:\n",
    "        f.append(4)\n",
    "    elif i == 4 :\n",
    "        f.append(3)\n",
    "    elif i >= 2:\n",
    "        f.append(2)\n",
    "    else:\n",
    "        f.append(1)\n",
    "f\n"
   ],
   "id": "363e06be991204fd",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[4, 2, 1, 1, 1, 2, 5, 2, 2, 1]"
      ]
     },
     "execution_count": 87,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 87
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:28:38.642474Z",
     "start_time": "2025-08-22T08:28:38.619538Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 计算m\n",
    "m = []\n",
    "for i in df1['AMOUNTINFO']:\n",
    "    if i >= 10000:\n",
    "        m.append(5)\n",
    "    elif i >= 7000:\n",
    "        m.append(4)\n",
    "    elif i >=4000:\n",
    "        m.append(3)\n",
    "    elif i >= 1000:\n",
    "        m.append(2)\n",
    "    else:\n",
    "        m.append(1)\n",
    "m"
   ],
   "id": "9be4ca1a1bad4e10",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "[5, 2, 2, 3, 3, 2, 3, 3, 3, 4]"
      ]
     },
     "execution_count": 88,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 88
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:28:41.107636Z",
     "start_time": "2025-08-22T08:28:41.069699Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 创建rmf表\n",
    "rmf = {\n",
    "    'R':r,\n",
    "    'F':f,\n",
    "    'M':m\n",
    "}\n",
    "RMF = pd.DataFrame(rmf)\n",
    "RMF = RMF.assign(最终得分 = RMF.R * 0.2 + RMF.F * 0.3 + RMF.M * 0.5)\n",
    "RMF"
   ],
   "id": "93dbabcafa2e1bda",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   R  F  M  最终得分\n",
       "0  2  4  5   4.1\n",
       "1  3  2  2   2.2\n",
       "2  1  1  2   1.5\n",
       "3  3  1  3   2.4\n",
       "4  3  1  3   2.4\n",
       "5  4  2  2   2.4\n",
       "6  2  5  3   3.4\n",
       "7  3  2  3   2.7\n",
       "8  5  2  3   3.1\n",
       "9  4  1  4   3.1"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>R</th>\n",
       "      <th>F</th>\n",
       "      <th>M</th>\n",
       "      <th>最终得分</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>4.1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2.2</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>1.5</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>2.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>2.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>4</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>2</td>\n",
       "      <td>5</td>\n",
       "      <td>3</td>\n",
       "      <td>3.4</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>2.7</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>5</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>3.1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>4</td>\n",
       "      <td>3.1</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 89,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 89
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:28:53.082209Z",
     "start_time": "2025-08-22T08:28:53.059264Z"
    }
   },
   "cell_type": "code",
   "source": "RMF.to_csv('./datas/rmf.csv', encoding='utf-8', index=False)",
   "id": "7fc851359fdcce8a",
   "outputs": [],
   "execution_count": 90
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T09:31:20.135292Z",
     "start_time": "2025-08-22T09:31:20.098393Z"
    }
   },
   "cell_type": "code",
   "source": [
    "def level(s):\n",
    "    if s >= 3:\n",
    "        return '高'\n",
    "    elif s >= 2:\n",
    "        return  '中'\n",
    "    else:\n",
    "        return '低'\n",
    "# 为最终得分添加分级列\n",
    "RMF['最终得分分级'] = RMF['最终得分'].apply(level)\n",
    "RMF\n",
    "count = RMF['最终得分分级'].value_counts()\n",
    "count"
   ],
   "id": "7515067681b59286",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "   R  F  M  最终得分 最终得分分级\n",
       "0  2  4  5   4.1      高\n",
       "1  3  2  2   2.2      中\n",
       "2  1  1  2   1.5      低\n",
       "3  3  1  3   2.4      中\n",
       "4  3  1  3   2.4      中\n",
       "5  4  2  2   2.4      中\n",
       "6  2  5  3   3.4      高\n",
       "7  3  2  3   2.7      中\n",
       "8  5  2  3   3.1      高\n",
       "9  4  1  4   3.1      高"
      ],
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>R</th>\n",
       "      <th>F</th>\n",
       "      <th>M</th>\n",
       "      <th>最终得分</th>\n",
       "      <th>最终得分分级</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2</td>\n",
       "      <td>4</td>\n",
       "      <td>5</td>\n",
       "      <td>4.1</td>\n",
       "      <td>高</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2.2</td>\n",
       "      <td>中</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>1</td>\n",
       "      <td>1</td>\n",
       "      <td>2</td>\n",
       "      <td>1.5</td>\n",
       "      <td>低</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>2.4</td>\n",
       "      <td>中</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>3</td>\n",
       "      <td>1</td>\n",
       "      <td>3</td>\n",
       "      <td>2.4</td>\n",
       "      <td>中</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>5</th>\n",
       "      <td>4</td>\n",
       "      <td>2</td>\n",
       "      <td>2</td>\n",
       "      <td>2.4</td>\n",
       "      <td>中</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>6</th>\n",
       "      <td>2</td>\n",
       "      <td>5</td>\n",
       "      <td>3</td>\n",
       "      <td>3.4</td>\n",
       "      <td>高</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>7</th>\n",
       "      <td>3</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>2.7</td>\n",
       "      <td>中</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>8</th>\n",
       "      <td>5</td>\n",
       "      <td>2</td>\n",
       "      <td>3</td>\n",
       "      <td>3.1</td>\n",
       "      <td>高</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>9</th>\n",
       "      <td>4</td>\n",
       "      <td>1</td>\n",
       "      <td>4</td>\n",
       "      <td>3.1</td>\n",
       "      <td>高</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ]
     },
     "execution_count": 104,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "execution_count": 104
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:30:37.849724Z",
     "start_time": "2025-08-22T08:30:37.699131Z"
    }
   },
   "cell_type": "code",
   "source": [
    "# 饼图\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei', 'Microsoft YaHei', 'DejaVu Sans']\n",
    "plt.figure(figsize=(10, 8),dpi=100)\n",
    "plt.pie(count.values, labels=count.index, autopct='%1.1f%%')\n",
    "plt.title('RFM用户等级分布')\n",
    "plt.show()"
   ],
   "id": "6059b661012d4a2d",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 1000x800 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnwAAAKSCAYAAABIowakAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAV5ZJREFUeJzt3XeYVOXh9vF7ZrZ3ttBh6X0RpIgSFQXF2DU21FhijZpoEqPGmMRolBjLq7/YRWMXFY1EQUVFUZQqXTosLEvb3svU94+RlRXcOjvPzJnv57rmYnd2ZvaedZxzz/Oc8xybz+fzCQAAAJZlNx0AAAAAHYvCBwAAYHEUPgAAAIuj8AEAAFgchQ8AAMDiKHwAAAAWR+EDAACwOAofAACAxVH4AAAALI7CByBsuVwubdmypcW3//jjj3/y9lu2bFFJSUmzjxHIkxPV19c3+nrevHltepzf/va3mjlzZqBiAbAgCh+ADvfRRx/JZrO1+PLmm2+26HHvvPNOTZkyRS6Xq9nb5ufn69xzz9UzzzzTcJ3H41FdXZ08Ho/OPvtsXXTRRfJ6vU0+zuWXX64HHnhAklRUVKTt27crLy9P+fn5jS779+9v8nF27dql7OxszZ8/X5K0cuVKTZ06VYsWLWr2uRxs9+7devzxx5Wbm9uq+wGILBQ+IIJ98cUXjYpWZmamzjrrLG3cuFGS1KdPn8MWsp49e0qSJk2aJJvNpnfffbfhMUeMGCGbzaYvvvii4bro6GhJUm1tbcPlwH0Ovq6qqkqSFBcX16L8N954o3bt2qVZs2Y1eTufz6cbbrhBbrdbL7zwgmw2m9LS0pSVlaVTTz1V//znP7V+/XotWbJEWVlZ6tSpk1JTUxUbG6tvv/224XHy8vL01ltv6cgjj5QkPfHEExo+fLj69u2rIUOGaMSIERoxYoT69u2rG264oclM//znP+V2uzVmzBhJ0oQJE3T66afrlltukdvtPux9KioqVFNTI4/H03DdU089pZSUFP3mN7855PZer1dOp7Ph7wogclH4AOg///mPlixZoieeeEKbN2/Wscceq9LSUknStGnTtGzZskaXuXPnNrr/6tWrJUlOp1ObNm065PGjoqIk+YvcgcuBEnjwdbGxsZJ+KIgHczqd2rhxY6NLXV2d7rzzTqWnpx/ys927dzfc9+qrr9ann36q+fPnq6ioSIMHD9YFF1yg3NxcXXjhhXrrrbc0e/ZslZeXa86cOaqpqdHcuXNVXl6u0aNHNzzOXXfdpWnTpumkk07S559/rhtuuEG1tbUaPny4Zs2apbKyMpWVlWngwIE6/fTTf/LvvXXrVj3//PP6y1/+otTU1IbrH374Ya1Zs0b33nvvYe83cuRIJSYmKioqqqF833fffSovL1dycvIhxdzhcCg2NlZTpkz5ySwAIkOU6QAAzBsyZIjGjx+v8ePHa9iwYRo5cqTef/99SVLnzp01duzYJu+/Zs0aSdJ333132NEpu711ny0Pd/tt27Zp2LBhLX6M888/X2+99ZYk6bbbbtPll1+uUaNGyefz6c0331RWVpYKCgp0/fXXa+XKlRo1apQkafz48brjjjtUVlbWaKRx5syZWrhwoVasWKHy8nJdfPHF+vWvf62//vWv8vl8iomJkeSf5t24caNOOeWUw+byer26/PLLDzsKOGjQIE2fPl2///3v1bNnT11zzTWNfv7pp5/KZrMpNjZWUVFRuu222/T5559r4cKF2rFjhzZs2KCzzz77kN95IBuAyEXhA9BITk6OYmNjlZ+f36LbH3300Q0jfGvWrNFRRx2lJUuWNLqNzWaT1Hiq9sC+ci2dvj0w6pebm6s+ffo0edtRo0Y1KjmDBw9W//79FR0dLYfD0TDieOAAjKOOOqoho8vlktfr1cqVKxvuv3XrVl166aUaO3asrrrqKm3ZskWZmZm64447JPlHHw/k++yzzzR8+HB169btsNnuu+8+LVu2TAsXLjzsSOYtt9yibdu26dprr9WmTZt0//33NzyXAQMGNNxu6dKleu211/Tuu+8qOztbH3zwgR588EFdf/31Tf5tAEQmCh+ARkpLS1VfX6+srKwW3T4nJ0eLFy9WRUWFVq9erZycnEMK34FiVVdX13DdBx98oDPOOKPRdW63+7AlSPphWrilHA7HIfc/uJhJ0o4dO9S3b199++23GjFiRMP1Tqez0e8bMGCAbrvtNg0fPlzbt2/XnDlztHjx4oYiVldX17Cf3OzZs7Vu3TrZbDYNHTpU69evb3icl156SX/729906623KjMzU7t27Woomge7/fbbFRsbq0ceeURz5szRyy+/rHHjxjX8fP/+/Tr//PN11VVX6ayzzpLkL8QHpsQB4McofAAaFBYW6ne/+51iYmL085//XPfdd1+z9+nWrZvS09O1du1arVmzRmeeeeYht2nuyNeWOFDgampqmj0Iwev1NhSp2tpa7d69WzExMYdMFe/bt0+Sv0ClpaU1+pnH41F9fb169+6tuLg43X///SovL9eYMWP0yCOPNEwBS/5p3Oeee04///nP9fzzz+vZZ5/VTTfdpOTk5IbbrFu3TldddZWuv/56VVRUqH///k0+hz//+c+aO3eu7r77bg0aNKjh+tLSUp1++unKy8vTc889p+eee67R/X5cIJ977jldffXVTf4uANZH4QOgo48+uuHrrKwsvf766w1H4j722GN67LHHGn5+3XXX6emnn250/5ycHK1Zs0Zr1qzRXXfddcjjH1g25eCidmBk7+DrDj769McOrFk3fPjwFj2nA4VsxYoVOvHEExUbG3vYfQNTU1P1i1/8QpL/KNiYmBjFxcXJ7Xarvr5eixcv1pgxY1RXV6fzzz9fRx99tG644Qbt27dPnTp1Unl5uWpra/Xxxx9r6dKlGj9+vCT//nb//ve/G37PiBEjtGTJEh155JGqrKzU9OnT9c033+j000/Xpk2b1L1794bbdunSRX369NEpp5zSaF/A3bt367TTTlNpaanGjh2rMWPGNPy933jjDT3zzDONjo4eN24co34AJFH4AEh6+eWXNWLECJ111lk69thjGwqQJF188cX64x//2PB9ZmbmIffPycnRRx99pMLCQuXk5Bzy85qaGklqNOJ1wOGuO5zi4mJJ0qJFixrK6E+ZNm1aw8EjEydObLTAcVP69OmjK664QnffffchPzvppJO0cOFCDR48WCkpKaqqqlJlZaWWLl2qwYMH69xzz9Utt9yir7/+Wl9//bVKS0s1efLkRo9xYAmWlJQUSf79EdPS0hqN4JWXl6umpka9e/dudN+dO3dq/PjxSkhI0Pz58/WHP/xBSUlJDX+LTp06KSoqqtHfxuFw/OQUOYDIQuEDoIEDB2r06NG6/fbbdfPNN+vvf/97wwECWVlZjaYvDycnJ0f//ve/1a1bN2VkZBzy83379ikjI0NFRUUN1x3Yh+/gM1c0tQ/fnj17FBMTo7Fjxza7P9+NN954yMjWli1b5HA4mjxi1ePxqKKiQnl5eXI6nerRo4fi4+MlSSeccIKOOeYYjR07ViNGjFC/fv0UGxurWbNm6fTTT9cdd9yh//znP3r22Wf19ttv6+KLL24odj9l9uzZmjRpUqPrDhws06tXr0bXZ2dn68EHH9SUKVMajQYCQEtQ+AA0uPrqqzV9+nRNnz5dzz//fIvvd2BUb+TIkYf9+YYNG1o8FftTFi1apJycnBYdvHHRRRcdct2xxx6r6urqQw7mOFhFRYWefPJJPf3003I6nVqwYIEmTpwoSbrnnnvk8Xj03XffNazpd//99+vtt9/WmjVrlJycrCeeeELTpk2TJM2YMaPJjPPnz9enn37asPzNAQfWD/xx4ZOkyy67rOHrlpziLRD7TgKwBhZeBtAgNjZWt912m1555RXl5eW1+H4Hzq5xuOlcyb9UyfHHH9/mXF6vV7NmzdIZZ5zR5sfYt2+fKisr9fjjj+vyyy9vWCT54Evv3r11xx13qKamRm63u6HslZWV6dhjj1VqaqomTpyoTz75RD/72c90ww036NJLL204AKNz586y2+3KyMhocn/EhQsX6vzzz9cZZ5xxyALNmzdvVlpampKSkpp8Pk1NU7/00kv6zW9+o3379rX4aGsA1kbhA9DItddeq8zMzIbzxbZEUlKS+vTpc9jCt3z5cq1du1bnnXdeo+sPFKIDo1Aej6dhOvPH064vvPCCdu/ereuuu65Vz+VwBg0apGefffawI5g/NSKWlpam888/X7NmzVJxcbFmzpypxYsXq6ioSA899JCcTqceeOABnXTSSbrnnns0efJkjR8/XjNnzmw0EldaWqp7771XU6ZM0ahRo/TGG280/GzmzJm68847df/992vChAnNPg+bzdZo+tvr9Tb8rr1792rmzJm6+uqrddxxx7X4bwPAwnwA0IGmTp3qGzdu3CHXv/nmmz5JvpqaGp/P5/P99re/9UnydenSxVdaWtpwu3Xr1vmSk5N91157bcAyPfjgg74HHnig4fvXXnvN9+ijj/rsdrvv0Ucfbfb+8+fP902cONGXn5/ve/HFF33Z2dm+oUOH+hYuXOjz+Xw+r9fr+/Of/+yz2+2Nct94442+hIQE3/333+9zuVyNHvPNN9/0devWzXfJJZf48vPzW/2cnnzySV/fvn0bfj8AHMzm87VgRxAAaAOfz6cPP/xQ8fHxOuGEExr9rKqqSvv27VO/fv1kt9u1fv16bdmyRZMnT240nfnxxx/rrrvu0ty5cztsevKss87SmjVrNGnSJD388MNKT09v8X1zc3P1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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 95
  },
  {
   "metadata": {
    "ExecuteTime": {
     "end_time": "2025-08-22T08:30:42.233866Z",
     "start_time": "2025-08-22T08:30:41.970571Z"
    }
   },
   "cell_type": "code",
   "source": [
    "count = RMF['最终得分分级'].value_counts()\n",
    "plt.bar(count.index, count.values)  # 将count.value改为count.values\n",
    "plt.title('RFM用户等级分布')\n",
    "plt.xlabel(\"等级\")\n",
    "plt.ylabel(\"用户数量\")\n",
    "plt.show()"
   ],
   "id": "ba57f731b0c5c6e4",
   "outputs": [
    {
     "data": {
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ],
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAicAAAHECAYAAADiaIpsAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjAsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvlHJYcgAAAAlwSFlzAAAPYQAAD2EBqD+naQAAK7BJREFUeJzt3XtUVPX+//HXwOCIF0CUPF5INNIUSI00tTQ9UmmZWifLSye1LEujrLS0/FbmETStLLugpmmlkbnqWOnJLpammZcy0aCyC4kXTIybgtxmfn/4Y45zQB0N3B+Z52OtWYvZs2fzHhbF07337LG5XC6XAAAADOFn9QAAAADHI04AAIBRiBMAAGAU4gQAABiFOAEAAEYhTgAAgFGIEwAAYBTiBAAAGIU4AQAARiFOAFSbkpIS7dq1y+v1V69efcL1d+3apT///POU26jKi14XFRV5fP3xxx+f0Xbuu+8+JScnV9VYQI1HnADQRx99JJvN5vXt7bff9mq7jz76qOLi4lRSUnLKdffs2aMbb7xRc+fOdS8rKyvT0aNHVVZWpoEDB2rw4MFyOp0n3c7w4cM1Y8YMSVJWVpZ+/fVX7d69W3v27PG4HThw4KTbycjIUIsWLbRmzRpJ0rZt23TNNddo48aNp3wtx9u7d69efPFF/fbbb6f1PMCXESeAwb744guPKGjUqJEGDBigH374QZIUERFRaTw0b95cktSzZ0/ZbDa9++677m1GR0fLZrPpiy++cC8LCAiQJBUWFrpv5c85ftnhw4clSbVr1/Zq/rFjxyojI0PLly8/6Xoul0tjxoxRaWmpFi5cKJvNppCQEIWFhenaa6/V9OnTlZqaqk2bNiksLEwNGjRQcHCwHA6HvvnmG/d2du/erWXLlumSSy6RJL300kuKiopSy5YtddFFFyk6OlrR0dFq2bKlxowZc9KZpk+frtLSUsXGxkqSunTpon79+mncuHEqLS2t9Dl5eXkqKChQWVmZe9krr7yioKAgxcfHV1jf6XSquLjY/XMFcAxxApwDXnvtNW3atEkvvfSSfvrpJ3Xv3l3Z2dmSpCFDhmjLli0et1WrVnk8f/v27ZKk4uJi/fjjjxW2b7fbJR2LjvJbebAcv8zhcEj6b8wcr7i4WD/88IPH7ejRo3r00UcVGhpa4bG9e/e6nztq1Ch9+umnWrNmjbKystSmTRvdfPPN+u2333TLLbdo2bJlWrFihXJzc7Vy5UoVFBRo1apVys3NVceOHd3bmTx5soYMGaKrrrpKn3/+ucaMGaPCwkJFRUVp+fLlysnJUU5Oji688EL169fvhD/vn3/+WQsWLND//d//KTg42L38mWeeUUpKiqZOnVrp8y6++GLVrVtXdrvdHYrTpk1Tbm6u6tevXyEi/f395XA4FBcXd8JZAF9kt3oAAKd20UUXqXPnzurcubPatWuniy++WB988IEk6bzzztOll1560uenpKRIkr7//vtK/9Xv53d6/06pbP1ffvlF7dq183obgwYN0rJlyyRJDz/8sIYPH64OHTrI5XLp7bffVlhYmP744w/dfffd2rZtmzp06CBJ6ty5syZOnKicnByPPTjJyclav369vv32W+Xm5mro0KG655579Pjjj8vlcqlWrVqSjh3q+eGHH9SnT59K53I6nRo+fHile1dat26txMREPfjgg2revLnuvPNOj8c//fRT2Ww2ORwO2e12Pfzww/r888+1fv16paenKy0tTQMHDqzwPctnA3AMcQKcY2JiYuRwOLRnzx6v1u/atat7z0lKSoouu+wybdq0yWMdm80myfNwTfm5Hd4ewinfm/Lbb78pIiLipOt26NDB4w9ymzZtdMEFFyggIED+/v7uPTnlJ7dedtll7hlLSkrkdDq1bds29/N//vln3Xrrrbr00kt1xx13aNeuXWrUqJEmTpwo6dhenfL5PvvsM0VFRalJkyaVzjZt2jRt2bJF69evr3QP0bhx4/TLL7/orrvu0o8//qiEhAT3a4mMjHSvt3nzZi1ZskTvvvuuWrRooQ8//FAzZ87U3XfffdKfDQDiBDjnZGdnq6ioSGFhYV6tHxMTo6+//lp5eXnavn27YmJiKsRJeQQcPXrUvezDDz/U9ddf77GstLS00j/Y0n8PDXnL39+/wvOPjwhJSk9PV8uWLfXNN98oOjravby4uNjj+0VGRurhhx9WVFSUfv31V61cuVJff/21OxqOHj3qPq9jxYoV2rlzp2w2m9q2bavU1FT3dhYvXqwnnnhC48ePV6NGjZSRkeGOouM98sgjcjgcevbZZ7Vy5Uq9/vrr6tSpk/vxAwcOaNCgQbrjjjs0YMAAScfirfywGICTI06Ac8jBgwf1wAMPqFatWurbt6+mTZt2yuc0adJEoaGh2rFjh1JSUtS/f/8K65zqHTDeKI+NgoKCU57g6XQ63X/0CwsLtXfvXtWqVavC4aLMzExJx/7Yh4SEeDxWVlamoqIinX/++apdu7YSEhKUm5ur2NhYPfvss+7DQNKxQznz589X3759tWDBAs2bN0/33nuv6tev715n586duuOOO3T33XcrLy9PF1xwwUlfw2OPPaZVq1bpySefVOvWrd3Ls7Oz1a9fP+3evVvz58/X/PnzPZ73v7Ezf/58jRo16qTfC/A1xAlwDujatav767CwMC1dutT9jpznn39ezz//vPvx0aNHKykpyeP5MTExSklJUUpKiiZPnlxh++Vv9T0+Ksr3mBy/7Ph3ofyv8muCREVFefWayuPh22+/1d///nc5HI5Kz2UJDg7WP/7xD0nH3g1Tq1Yt1a5dW6WlpSoqKtLXX3+t2NhYHT16VIMGDVLXrl01ZswYZWZmqkGDBsrNzVVhYaFWr16tzZs3q3PnzpKOnR8yZ84c9/eJjo7Wpk2bdMkllyg/P1+JiYn66quv1K9fP/34449q2rSpe93GjRsrIiJCffr08Th3Ze/evbruuuuUnZ2tSy+9VLGxse6f91tvvaW5c+d6vEuqU6dO7E0BKkGcAOeA119/XdHR0RowYIC6d+/u/mMtSUOHDtWECRPc9xs1alTh+TExMfroo4908OBBxcTEVHi8oKBAkjz2JJSrbFllDh06JEnauHGjO5xOZMiQIe4Tcy+//HKPi52dTEREhEaMGKEnn3yywmNXXXWV1q9frzZt2igoKEiHDx9Wfn6+Nm/erDZt2ujGG2/UuHHjtGHDBm3YsEHZ2dnq3bu3xzbK3zYcFBQk6dj5MyEhIR57RnJzc1VQUKDzzz/f47m///67OnfurDp16mjNmjV66KGHVK9ePffPokGDBrLb7R4/G39//xMeJgN8GXECnAMuvPBCdezYUY888ojuv/9+TZkyxX3yZVhYmMchjMrExMRozpw5atKkiRo2bFjh8czMTDVs2FBZWVnuZeXnnBx/xdWTnXOyb98+1apVS5deeukpzz8ZO3ZshT0Gu3btkr+//0nfuVJWVqa8vDzt3r1bxcXFatasmQIDAyVJvXr1Urdu3XTppZcqOjparVq1ksPh0PLly9WvXz9NnDhRr732mubNm6d33nlHQ4cOdUfIiaxYsUI9e/b0WFZ+InJ4eLjH8hYtWmjmzJmKi4vz2MsC4PQRJ8A5ZNSoUUpMTFRiYqIWLFjg9fPK95ZcfPHFlT6elpbm9eGYE9m4caNiYmK8OjF28ODBFZZ1795dR44cqXCi7PHy8vL08ssvKykpScXFxVq7dq0uv/xySdJTTz2lsrIyff/99+5rpiQkJOidd95RSkqK6tevr5deeklDhgyRJL366qsnnXHNmjX69NNP3W/ZLld+fZb/jRNJuu2229xfe3MZ/ao41weoibgIG3AOcTgcevjhh/XGG29o9+7dXj+v/KqwlR3SkY69vfbKK68847mcTqeWL1+u66+//oy3kZmZqfz8fL344osaPny4+4Jpx9/OP/98TZw4UQUFBSotLXWHSU5Ojrp3767g4GBdfvnl+uSTT3TFFVdozJgxuvXWW90nt5533nny8/NTw4YNT3r+zPr16zVo0CBdf/31FS7W9tNPPykkJET16tU76es52aGqxYsXKz4+XpmZmV6/6wrwJcQJcI6566671KhRI/fnx3ijXr16ioiIqDROtm7dqh07duimm27yWF7+x7v8X/dlZWXuQxr/e+hl4cKF2rt3r0aPHn1ar6UyrVu31rx58yrdM3SiPQ0hISEaNGiQli9frkOHDik5OVlff/21srKyNGvWLBUXF2vGjBm66qqr9NRTT6l3797q3LmzkpOTPfZwZGdna+rUqYqLi1OHDh301ltvuR9LTk7Wo48+qoSEBHXp0uWUr8Nms3kcAnM6ne7vtX//fiUnJ2vUqFHq0aOH1z8bwGe4APi0a665xtWpU6cKy99++22XJFdBQYHL5XK57rvvPpckV+PGjV3Z2dnu9Xbu3OmqX7++66677qqymWbOnOmaMWOG+/6SJUtcs2fPdvn5+blmz559yuevWbPGdfnll7v27NnjWrRokatFixautm3butavX+9yuVwup9Ppeuyxx1x+fn4ec48dO9ZVp04dV0JCgqukpMRjm2+//barSZMmrmHDhrn27Nlz2q/p5ZdfdrVs2dL9/QGcmM3lqsLPFwdwTnG5XPrPf/6jwMBA9erVy+Oxw4cPKzMzU61atZKfn59SU1O1a9cu9e7d2+OQxurVqzV58mStWrWq2g5RDBgwQCkpKerZs6eeeeYZhYaGev3c3377TRs2bNCQIUMqnM/y1VdfqUWLFmrWrJmkY3uHMjMz3fer0uzZszVjxgzt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wQcfVIMGDbRu3TrZbDZFRUVp0qRJ1TkzAACowbw+52T69OnKzs7Wnj17tGXLFoWFhenAgQM6cuSIwsLCtH37djVv3lzffvut8vLyqnNmAABQg3kdJ2FhYWrcuLEaNGigbdu2KT8/X+edd546dOigvLw8paenKzMzU3feeacmTpxYnTMDAIAazOs4GTt2rDZt2qTIyEj17t1bv/76q6644gp99tlnKiws1NVXX60GDRrogQce0Jdffql9+/ZV59wAAKCG8jpOFixYoG7duikyMlLNmzfX22+/rVtvvVWBgYEKCQnR999/r+eee042m0233HKL3n///eqcGwAA1FBenxA7YcIESVJOTo5iY2MVERGhpKQkhYSEaObMmQoICFB0dLQkafTo0QoLC6ueiQEAQI122p+tExISopCQEElS7969JUk333yzxzqECQAAOFOnHSdz585VQECA/P39ZbPZVFpaqjZt2vBZOgAAoEqcdpzce++97sM3kpSSkqLnn3+eOAEAAFXitONEkrZt2+b+OiAgQPfee2+VDQQAAHyb1+/WKWez2U56HwAA4K84rTg5cuRIdc0BAAAgycvDOmvXrtX48ePVrl276p4HAAD4OK/2nJSUlGj48OGaM2dOdc8DAAB8nFd7TuLi4hQXF1fdswAAAJz+CbEAAADV6bTfSuxyuXT77be775eVlemee+5Rx44dde2116p58+ZVOiAAAPAtpx0ns2bNkr+/v/z9/SVJF154oQ4cOKCFCxcqPj5egwcP1rRp04gUAABwRk47Tu6///4TPpaamqr4+HjFxsZq9+7dcjgcf2k4AADge87oCrEn0q5dO33yySf69NNPCRMAAHBGqvyEWD8/P1199dVVvVkAAOAjvN5z0rhxYzkcDtntJ36Kn5+f2rZtqyVLligoKKhKBgQAAL7F6zix2+1677335HK5NGTIECUnJ8vlcmnAgAF6//33JR27WNs999yjFStW6J///Ge1DQ0AAGour+PE4XAoNjZWklS7dm3318cvl6RHHnlEUVFRVTwmAADwFWd0QuzJPol48ODBZzwMAACA13GSnZ2txx9/XJL0xx9/uL/Oyclxf+1yuVRcXKw77rhDrVu3roZxAQBATed1nDidTuXk5Mjlcqm0tFTZ2dmSjl0htvzr8sdKS0urZ1oAAFDjeR0noaGheuGFFyRJX3zx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"
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "execution_count": 96
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 2
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython2",
   "version": "2.7.6"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
